//
// Created by china on 25-1-10.
//

#ifndef CHAT_GROUPMODEL_H
#define CHAT_GROUPMODEL_H

#include <vector>
#include "db.h"
#include "DataBase.hpp"
#include "Pool.h"


//!todo 完善群组功能
/*
 * 待完成群组逻辑
 * 删除群
 * 退出群
 * 提升管理员
 * */

class GroupModel {
public:
    //创建群
    bool createGroup(struct MySQLTable::AllGroup& group);
    //加入群
    bool addGroup(const struct MySQLTable::GroupUser& groupUser);
    //查询用户所在群组信息
    std::vector<struct MySQLTable::AllGroup> queryGroups(const struct MySQLTable::User& user);
    //根据指定的groupid查询群组用户id列表，除userid自己，主要用户群聊业务给群组其他成员群发消息
    std::vector<int> queryGroupUsers(int userid,int groupid);
};


#endif //CHAT_GROUPMODEL_H
